High-speed interconnect solutions with support for secondary continuous time in-band back channel communication for simplex retimer solutions

ABSTRACT

The present disclosure is directed to systems, apparatuses, and methods for performing continuous or periodic link training. Existing link training protocols generally perform link training only once during startup or initialization of a link and, as a result, are limited in their applications. After link training is performed and Open Systems Interconnect (OSI) data link layer and other high-layer data is transmitted across the link, no further link training is performed using these existing link training protocols. However, parameters of the link may change over time after link training is performed, such as temperature of the link and voltage levels of signals transmitted over the link by the transmitter of the transmitter-receiver pair.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.62/532,106, filed Jul. 13, 2017, which is incorporated herein byreference in its entirety.

TECHNICAL FIELD

This application relates generally to high-speed interconnect solutions,including high-speed interconnect solutions for continuous time backchannel communication and proprietary features.

BACKGROUND

Link training is a technique used in high speed serializer-deserializer(SerDes) communication and is part of the Ethernet Standard (e.g.,Institute of Electrical and Electronics Engineers (IEEE) 802.3)specifications. Link training provides a protocol for a device tocommunicate over a point-to-point link, using in-band information, to aremote link partner (LP) to jointly improve the bit-error rate (BER)over the link and/or interference on adjacent channels caused by thelink. Existing link training solutions perform link training only once,during startup or initialization of the link, because the mechanics ofthese solutions would interfere with user data. As a result, existinglink training solutions are limited in their applications.

BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES

The accompanying drawings, which are incorporated herein and form a partof the specification, illustrate the present disclosure and, togetherwith the description, further serve to explain the principles of thedisclosure and to enable a person skilled in the pertinent art to makeand use the disclosure.

FIG. 1 illustrates an example network in which link training can beperformed in accordance with embodiments of the present disclosure.

FIG. 2 illustrates a block diagram of a network device with continuousand/or periodic link training capability in accordance with embodimentsof the present disclosure.

FIG. 3 illustrates one implementation of transmitter that is configuredto add low-frequency signaling that forms a link training communicationchannel on top of higher-frequency signaling used to transmit OpenSystems Interconnect (OSI) data link layer and other high-layer data inaccordance with an embodiment of the present disclosure.

FIG. 4 illustrates one implementation of receiver that is configured toextract low-frequency signaling that forms a link training communicationchannel on top of higher-frequency signaling used to transmit OSI datalink layer and other high-layer data in accordance with an embodiment ofthe present disclosure.

FIG. 5 illustrates one implementation of a transmitter and receiver thatare configured to form a link training communication channel usingfrequency-division duplexing in accordance with embodiments of thepresent disclosure.

FIG. 6 illustrates an example network device with a receiver and atransmitter as well as a simplex retimer that are configured to performlink-training in accordance with embodiments of the present disclosure.

FIG. 7 illustrates another example network device with a receiver and atransmitter as well as a simplex retimer that are configured to performlink-training in accordance with embodiments of the present disclosure.

FIG. 8 illustrates an example network device with a receiver and atransmitter as well as a duplex retimer that are configured to performlink-training in accordance with embodiments of the present disclosure.

FIG. 9 illustrates a block diagram of an example computer system inaccordance with embodiments of the present disclosure.

The present disclosure will be described with reference to theaccompanying drawings. The drawing in which an element first appears istypically indicated by the leftmost digit(s) in the correspondingreference number.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth inorder to provide a thorough understanding of the disclosure. However, itwill be apparent to those skilled in the art that the disclosure,including structures, systems, and methods, may be practiced withoutthese specific details. The description and representation herein arethe common means used by those experienced or skilled in the art to mosteffectively convey the substance of their work to others skilled in theart. In other instances, well-known methods, procedures, components, andcircuitry have not been described in detail to avoid unnecessarilyobscuring aspects of the disclosure.

References in the specification to “one embodiment,” “an embodiment,”“an example embodiment,” etc., indicate that the embodiment describedmay include a particular feature, structure, or characteristic, butevery embodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same embodiment. Further, when a particular feature,structure, or characteristic is described in connection with anembodiment, it is submitted that it is within the knowledge of oneskilled in the art to affect such feature, structure, or characteristicin connection with other embodiments whether or not explicitlydescribed.

It will be apparent to persons skilled in the relevant art(s) thatvarious elements and features of the present disclosure, as describedherein, can be implemented in hardware using analog and/or digitalcircuits, in software, through the execution of instructions by one ormore general purpose or special-purpose processors, or as a combinationof hardware and software.

FIG. 1 is a high level diagram illustrating an example network 100 inwhich link training can be performed in accordance with embodiments ofthe present disclosure. Example network 100 may include various networkdevices 102 and 104, such as one or more servers, switches, routers, orhubs, and a switch device 106 to facilitate communication between theone or more network devices 102 and 104 and potentially other networkdevices of network 100 not shown.

Network devices 102 and 104 can be connected or otherwise incommunication with each other through switch device 106, such as anEthernet switch. For example, network devices 102 and 104 can each becoupled to a physical port of switch device 106 by respective networktransmission line(s) 108 and 110. Network transmission line(s) 108 and110 can be, for example, coaxial cables, twinax cables, twisted paircables, fiber optic cables, backplane traces, or generally any otherreasonable transmission line.

In one or more implementations, one or more of network devices 102 and104 can be referred to as a remote link partner (LP) of switch device106. In one or more implementations, a remote LP of switch device 106can further include another switch device 112 coupled toy switch device106 via transmission line(s) 114. The type of transmission line(s) 114can depend on the distance between switch devices 106 and 112. Forexample, transmission line(s) 114 can be provided using backplane traces(e.g., for short distances up to 1 m), twinax cables (e.g., fordistances up to 15 m), twisted pairs (e.g., for distances up to 100 m),multimode fibers (e.g., for distances up to 5 km), and single-modefibers (e.g., for distances up to 40 km).

Switch devices 106 and 112 and/or one or more of network devices 102 and104 can implement link training. As discussed above, link training is atechnique used in high speed serializer-deserializer (SerDes)communication and is part of the Ethernet Standard (e.g., IEEE 802.3)specifications. Link training provides a protocol for a network deviceto communicate over a point-to-point link, conventionally using in-bandinformation (i.e., information transmitted in the same band that OpenSystems Interconnect (OSI) data link layer and other high-layer data istransmitted), to a remote LP to jointly improve the bit-error rate (BER)of the link and/or interference to adjacent channels caused by the link.In yet another example, link training can be performed by thetransmitter-receiver pair to perform some sort of maintenance task tomaintain the link.

More specifically, in one or more implementations, link training can beperformed between a transmitter of one device in network 100 and areceiver of another device in network 100 (i.e., a transmitter-receiverpair) that are coupled together via one or more transmission lines. Linktraining can be performed by the transmitter-receiver pair to tune oradapt one or more settings of the transmitter to improve, for example,the bit-error rate (BER) of a communication channel (i.e., a link)established between the transmitter-receiver pair over the one or moretransmission lines that couple the transmitter-receiver pair together.In addition or alternatively, link training can be performed by thetransmitter-receiver pair to tune or adapt one or more settings of thetransmitter to improve interference caused by the link establishedbetween the transmitter-receiver pair in other, nearby transmissionlines or adjacent channels. In yet another example, link training can beperformed by the transmitter-receiver pair to perform some sort ofmaintenance task to maintain the link.

Existing link training protocols generally perform link training onlyonce during startup or initialization of the link and, as a result, arelimited in their applications. After link training is performed and OSIdata link layer and other high-layer data is transmitted across thelink, no further link training is performed using these existing linktraining protocols because of their mechanics and how they wouldinterfere with the user data. However, parameters of the link may changeover time after link training is performed, such as temperature of thelink and voltage levels of signals transmitted over the link by thetransmitter of the transmitter-receiver pair.

Continuous or periodic link training can therefore be beneficial in somecircumstances, especially for higher-speed serial communication links,such as those at or above 100 gigabits per second (Gb/s). Duringcontinuous or periodic link training, link training data can betransmitted using in-band and/or out-of-band information that isintermixed with OSI data link layer and other high-layer data (i.e.,user data).

In one or more implementations, switch device 112 can be placed closeenough to a connector or port of switch device 106 and therefore theinterconnect length may be reduced. In order to extend the reach oftransmission line(s) 114, an intermediate device or component, such as asimplex or duplex retimer, may be inserted near the connector or port ofeither or both of switch device 112 and switch device 106 to extend thereach of transmission line(s) 114. In one or more implementations, asimplex retimer can be a device and/or component that is aunidirectional repeater used to extend the length of a link, whereas aduplex retimer may be two simplex retimers that operate together to forma bi-directional repeater used to extend the length of a link in bothcommunication directions. In one or more implementations, only onedirection of the link at a device may use a simplex retimer, but not theother direction of the link at the device. In one or moreimplementations, the simplex retimers can be physical layer aware, e.g.the retimer may operate on the physical layer, such as one of thephysical layers specified by the IEEE 802.3 Standard specifications.

FIG. 2 illustrates a block diagram of a network device 200 withcontinuous and/or periodic link training capability in accordance withembodiments of the present disclosure. Examples of network device 200include a switch device, such as switch device 106 in FIG. 1, or anothernetwork device, such as one of network devices 102 or 104 in FIG. 1. Inone or more implementations, network device 200 is compliant with one ormore of the IEEE 802.3 Standard specifications and forms one side of anEthernet link.

As shown in FIG. 2, network device 200 includes a receiver 202 and atransmitter 204. Receiver 202 includes a receiver front-end 206, anadaptation parameter generator 208, and a decoder 210. Transmitter 204includes a transmitter front-end 212, an encoder 214, and an adaptationparameter receiver 216. Receiver 202 and transmitter 204 together form atransceiver that performs high speed SerDes communication with a remoteLP (not shown) over transmission line(s) 218 and 220. The remote LP canbe, for example, a switch, router, server, or another type of networkdevice.

Network device 200 includes features that allow link training, asdescribed above, to be performed with the remote LP over transmissionline(s) 218 and 220. For example, when transmitter 204 is communicatingwith a receiver (not shown) of the remote LP over transmission line(s)220, the receiver of the remote LP can request transmitter 204 to changeone or more of its operating parameters (e.g., its feed-forwardequalizer tap weights and/or precoder settings). This request can bemade to improve, for example, BER performance of the link between thetransmitter-receiver pair established over transmission line(s) 220. Thereceiver of the remote LP makes the request because transmitter 204 maynot be aware of channel characteristics and/or variations that changeover time during operation, such as temperature and signal voltagelevels, of the link between the transmitter-receiver pair. The requestfrom the receiver of the remote LP can therefore be used to enhance thequality of the link to improve BER performance and other measures oflink performance.

In some implementations, receiver front-end 206 can recover a signal 222received over transmission line(s) 218 from the transmitter (not shown)of the remote LP and provide the received signal 222 in the digitaldomain to adaptation parameter generator 208 and decoder 210. Beforeproviding the received signal 222 in the digital domain to adaptationparameter generator 208 and decoder 210, receiver front-end 206 canperform filtering, amplification, shaping, and/or equalization on thesignal in either the analog or digital domain. Decoder 210 can decodethe received signal 220 from receiver front-end 206 and extract from thereceived signal 220 data that is sent over a link training communicationchannel that co-exists with data traffic corresponding to the OSI datalink layer and other higher OSI layers. The data extracted from the linktraining communication channel can include the request from the receiverof the remote LP to change one or more of the operating parameters(e.g., feed-forward equalizer tap weights or precoder settings) oftransmitter 204.

In contrast to prior link training solutions, the link trainingcommunication channel can persist after initialization of the linkbetween the transmitter-receiver pair is established over transmissionline 218 to allow for continuous or periodic updates to operatingparameters of transmitter 204.

Decoder 210 can pass the extracted data (or adaptation parameters) fromthe link training communication channel to adaptation parameter receiver216 of transmitter 204. Adaptation parameter receiver 216 can then setor adjust one or more parameters of encoder 214 and/or transmitterfront-end 212 based on the extracted data received from decoder 210. Forexample, adaptation parameter receiver 216 can adjust tap weights of afeed-forward equalizer used by encoder 214 to equalize data transmittedover transmission line(s) 220 and/or weights of a precoder used toprecode data transmitted over transmission line(s) 220. In anotherexample, where transmission line(s) 220 include a differential pair oftransmission lines, adaptation parameter receiver 216 can adjust thedelay in one or both lines of the differential pair to compensate forany differential skew at the receiver of the remote LP based on theextracted data. In one embodiment, because the link trainingcommunication channel persists after initialization of the link betweenthe transmitter-receiver pair is established over transmission line(s)218, a long feed-forward equalizer with, for example, ten or more tapscan be used to improve performance and/or a sparse feed-forwardequalizer for reflection cancellation can be implemented.

In the opposite communication direction, when receiver 202 iscommunicating with the transmitter of the remote LP over transmissionline(s) 218, receiver 202 can request the transmitter of the remote LPto change one or more of its operating parameters (e.g., itsfeed-forward equalizer tap weights, precoder settings, or differentialpair delay parameters to compensate for differential skew). This requestcan be made to improve, for example, a BER performance of the linkbetween the transmitter-receiver pair established over transmissionline(s) 218. Receiver 202 makes the request because the transmitter ofthe remote LP may not be aware of channel characteristics and/orvariations that change over time during operation, such as temperatureand signal voltage levels, of the link between the transmitter-receiverpair. The request from receiver 202 can therefore be used to enhance thequality of the link to improve the BER performance and other measures oflink performance.

In some implementations, adaptation parameter generator 208 monitors thequality of received signal 222 using one more known quality measurementtechniques or algorithms and determines the changes to the one or moreparameters of the transmitter of the remote LP to improve theperformance of the link between the transmitter-receiver pairestablished over transmission line(s) 218. Adaptation parametergenerator 208 then sends the changes to the one or more parameters (oradaptation parameters) as part of the request to encoder 214 fortransmission to the remote LP. Encoder 214 can encode the request andtransmit the encoded request over the link training communicationchannel, which co-exists with data traffic corresponding to the OSI datalink layer and other higher OSI layers.

In one implementation, the link training communication channel is formedby “stealing” overhead from a Physical Coding Sublayer (PCS). The PCS ispart of the OSI networking protocol sublayer in, for example, the FastEthernet and Gigabit Ethernet standards. It sits at the top of thephysical layer (PHY) and performs data encoding/decoding (e.g., 64/66bit encoding/decoding), scrambling/descrambling, alignment markerinsertion/removal, etc. Decoder 210 can implement the decoding,decscrambling, and/or alignment marker removal functionality of the PCS,whereas encoder 214 can implement the encoding, scrambling, andalignment marker insertion functionality of the PCS.

The PCS inserts and removes alignment markers to allow, among otherthings, PCS encoded blocks of data (e.g., 66 bit encoded blocks of data)to be aligned after being received over one or more transmission lines.The alignment markers include pad bits in many networkingspecifications, such as the IEEE 802.3 Standard specifications. Thesepad bits in the alignment markers that carry no information can bereassigned (or “stolen”) by the encoder of the remote LP's transmitterand encoder 214 of transmitter 204 to form the link trainingcommunication channel for carrying respective link training data. Theremote LP's receiver and decoder 210 of receiver 202 can then extractthe pad bits to recover the link training data.

For example, IEEE 802.3 clause 134 RS-FEC includes a 1-bit pad, inmapped alignment markers, that occurs every 1024 encoded blocks of dataor codewords that can be reassigned to form the link trainingcommunication channel for carrying link training data bits. IEEE 802.3clause 92 RS-FEC includes a 5-bit pad, in mapped alignment markers, thatoccurs every 4096 encoded blocks of data or codewords that can bereassigned to form the link training communication channel for carryinglink training data bits. IEEE 802.3 clause 119 includes a 65-bit pad, inmapped alignment markers, that occurs every 8193 encoded blocks of dataor codewords for 200 Gb/s Ethernet that can be reassigned to form thelink training communication channel for carrying link training databits. Finally, IEEE 802.3 clause 119 includes a 113-bit pad, in mappedalignment markers, that occurs every 4096 encoded blocks of data orcodewords for 400 Gb/s Ethernet that can be reassigned to form the linktraining communication channel for carrying link training data bits.

In another implementation, the link training communication channel canbe formed by adding low-frequency signaling on “top” of thecomparatively higher-frequency signaling used to transmit OSI data linklayer and other high-layer data over transmission line(s) 218 and 220.For example, FIG. 3 illustrates one implementation of transmitter 204 inFIG. 2 that is configured to add low-frequency signaling that forms thelink training communication channel on top of the higher-frequencysignaling used to transmit OSI data link layer and other high-layer datain accordance with an embodiment of the present disclosure.

More specifically, as shown in FIG. 3, encoder 214 includes a low-speedencoder 302 and, for example, a feed-forward equalizer (FFE)/precoder304. Low-speed encoder 302 receives link training data from, forexample, adaptation parameter generator 208 of receiver 202 as describedabove in FIG. 2 and encodes the link training data for transmission overtransmission line(s) 220. Low-speed encoder 302 can encode the linktraining data at a bit or symbol rate that is much slower than the bitor symbol rate of the encoded OSI data link layer and higher layer dataprocessed by FFE/precoder 304. For example, low-speed encoder 302 canencode the link training data into bits or symbols that each span R bitsor symbols of the encoded OSI data link layer and higher layer data,where R is an integer. In one embodiment, R is greater than 1000.However, an upper bound on R may be set based on any AC couplingperformed on the encoded link training data at the receiver of theremote LP or in association with transmission line(s) 220. In addition,low-speed encoder 302 can encode the link training data using, forexample, a Manchester encoding or a differential Manchester encoding.

When used, FFE/precoder 304 is configured to precode and/or equalize theencoded OSI data link layer and higher layer data. The actual hardwareand/or software used to encode the OSI data link layer and higher layerdata is not shown in encoder 214 for clarity purposes.

The low-speed encoded data output by low-speed encoder 302 and theequalized and/or precoded OSI data link layer and higher layer dataoutput by FFE/precoder 304 are combined at summing node 306 and passedonto transmitter front-end 212. Transmitter front-end 212 includes adigital-to-analog converter (DAC) 308 that converts the combined encodeddata from the digital domain to the analog domain. In anotherembodiment, the two signals are first converted to the analog domain andthen combined. In one embodiment, part of the full-scale output range ofDAC 308 is reserved for the low-frequency signal carrying the linktraining data as shown in the bottom left of FIG. 3. The signal swing ofthe low-frequency signal carrying the link training data can be kept lowto avoid sacrificing too much dynamic range of DAC 308.

It should be noted that the link training data, before being processedby low-speed encoder 302, can be encoded by a forward-error correctingcode. Encoding the link training data with a forward-error correctingcode can help to facilitate the use of a lower amplitude signal, withless noise-margin, output by low-speed encoder 302. It should be furthernoted that the low-frequency signal carrying the link training data canbe sent as common mode over transmission line(s) 220 when transmissionline(s) 220 form a differential pair. More specifically, the OSI datalink layer and higher layer data can be sent over transmission line(s)220 as a differential signal and the low-frequency signal carrying thelink training data can be sent over transmission line(s) 220 as commonmode to further prevent interference between the two signals.

FIG. 4 illustrates one implementation of receiver 202 in FIG. 2 that isconfigured to extract the low-frequency signaling that forms the linktraining communication channel on top of the higher-frequency signalingused to transmit OSI data link layer and other high-layer data inaccordance with an embodiment of the present disclosure. As shown inFIG. 4, decoder 210 includes a low-pass filter (LPF) 402 and a slicer404. LPF 402 is configured to low-pass filter received signal 222. Theoutput of LPF 402 is a low-frequency signal carrying link training dataas discussed above.

Slicer 404 is configured to sample the low-frequency signal that isoutput by LPF 402 at the rate in which symbols of the link training datawere encoded. Slicer 404 is then configured to determine whether thesample is above or below a predefined threshold. For example, if zerovolts is the threshold used by slicer 404 to decide whether a sample ofthe low-frequency signal is either a logical one or a logical zerovalue, then any sample that has a voltage below the zero volt thresholdwill be determined to be a logical zero value by slicer 404 and anysample that has a voltage above the zero volt threshold will bedetermined to be a logical one value by slicer 404. Slicer 404 outputs alogical one value or logical zero value for each received symbol basedon its determination. The output of slicer 404 (ideally) represents theoriginal link training data transmitted over the link trainingcommunication channel. It should be noted that in other instances, wherethe link training data is encoded using more than two amplitude levels(e.g., PAM-4), slicer 404 can include additional slicer levels than thetwo mentioned above. It should also be noted that after slicer 404outputs the link training data, further forward error correctiondecoding can be performed on the link training data to detect and,potentially, correct for any errors in the data.

Up until this point in the description, the described link trainingcommunication channels have all been “co-propagating” link trainingcommunication channels, where co-propagating refers to the fact that thelink training data is transmitted in the same direction as the user data(i.e., in the same direction as the OSI data link layer and otherhigh-layer data) over the transmission line(s). A “counter-propagating”link training communication channel can further be implemented and canbe particularly valuable in closing a link training feedback loop in asystem with one transmission line or set of transmission lines forcommunicating data between two devices in a single direction.

In particular, such a link training communication channel can be formedusing frequency-division duplexing over one or more of transmissionline(s) 218 and 220. For example, as shown in network device 500 of FIG.5, receiver 202 can have a link training (LT) transmitter (TX) 502 totransmit a request from receiver 202 with the adjustment parameters forthe remote LP transmitter as generated by adaptation parameter generator208. LT TX 502 can transmit the request over the same transmissionline(s) 218 that receiver 202 receives signal 222 from the transmitterof the remote LP. More specifically, LT TX 502 can transmit the requestin a different frequency band than the frequency band used by thetransmitter of the remote LP to transmit signal 222. A hybrid 504 couldalso be used to prevent the transmit signal of LT TX 502 frominterfering with the operation of receiver front-end 206. Thetransmitter of the remote LP can further include a link training (LT)receiver (RX) and hybrid to receive the request from receiver 202.

An example of such an LT RX is shown in transmitter 204 as LT RX 506.Transmitter 204 can implement a similar FDD scheme with the receiver ofthe remote LP. LT RX 506 can be coupled to transmission line(s) 220using a hybrid 508 to prevent the transmit signal of transmitterfront-end 212 from interfering with the operation of LT RX 506.

It should again be noted that the signal carrying the link training datacan be sent as common mode over transmission line(s) 218 or 220 whentransmission line(s) 218 or 220 form a differential pair. Morespecifically, the OSI data link layer and higher layer data can be sentover transmission line(s) 218 and 220 as a differential signal and thesignal carrying the link training data can be sent over transmissionline(s) 218 or 220 as common mode to further prevent interferencebetween the two signals. It should be further noted that theco-propagation and counter-propagation link training communicationchannels can be used together to form a closed loop training channelover a single transmission line or set of transmission lines used in adifferential signaling scheme.

As discussed above, in some implementations of network devices, such asthose shown in FIG. 1, a simplex or duplex retimer can be used to extendthe reach of transmission line(s) used by the network device tocommunicate with a remote LP. In one or more implementations, a simplexretimer can be a unidirectional repeater used to extend the length oftransmission line(s), whereas a duplex retimer may be two simplexretimers that operate together to form a bi-directional repeater used toextend the length of transmission line(s) in both communicationdirections. In one or more implementations, only one direction of a linkat a device may use a simplex retimer, but not the other direction ofthe link at the device. In one or more implementations, the simplexretimers can be physical layer aware, e.g. the retimer may operate onthe physical layer, such as one of the physical layers specified by theIEEE 802.3 specifications.

FIG. 6 illustrates an example network device 600 with receiver 202 andtransmitter 204 as discussed above with respect to FIG. 2 as well as asimplex retimer 602 that are configured to perform link-training inaccordance with embodiments of the present disclosure. In oneembodiment, receiver 202 and transmitter 204 are implemented on chipwith the hardware and software configured to perform the mainfunctionality of network device 600 (e.g., switching functionality,server functionality, etc.). In this embodiment, simplex retimer 602 isimplemented on a separate chip but still within network device 600. Forexample, simplex retimer 602 can be implemented on the same printedcircuit board as the chip that implements receiver 202 and transmitter204. The two chips can be coupled via copper traces on the printedcircuit board or some other type of transmission line(s) not shown inFIG. 6.

Simplex retimer 602 is configured to clean up and remove signaldegradation of a signal received over transmission line(s) 218 from thetransmitter of the remote LP (not shown) before sending the signal toreceiver 202. As shown in FIG. 6, simplex retimer 602 specificallyincludes a retimer receiver (RX) 604 and a retimer transmitter (TX) 606.Retimer receiver 604 is configured to receive the signal from thetransmitter of the remote LP over transmission line(s) 218 and remove,at least to some extent, degradation of the signal. In someimplementations, retimer RX 604 includes an adaptive continuous timelinear equalizer and/or a decision feedback equalizer for cleaning upand removing signal degradation of a signal received over transmissionline(s) 218 from the transmitter of the remote LP before sending thesignal to receiver 202. Although not shown in FIG. 6, after cleaning upthe signal received over transmission line(s) 218, retimer RX 604 canpass the signal to retimer TX 606 to transmit the signal to receiver 202for processing as described above with respect to FIG. 2.

In addition, because receiver 202 is not in direct communication withthe transmitter of the remote LP as was the case in FIG. 2, retimer RX604 can now perform link training as described above with thetransmitter of the remote LP. In particular, retimer RX 604 can includean adaptation parameter generator similar to adaptation parametergenerator 208 and a decoder similar to decoder 210. Retimer RX 604 canthen pass on the adaptation parameters that it generated by analyzingthe signal received from the transmitter of the remote LP partner usingone or more known quality measurement techniques or algorithms, as wellas those adaptation parameters received directly from the remote LPtransmitter to adjust parameters of transmitter 204 as described above.Retimer RX 604 can receive the parameters from the transmitter of theremote LP in the same manner as receiver 202 over an communication linkformed using any of the above methods or techniques described above(e.g., stealing bits from the PCS protocol, low-speed signaling, etc.).Retimer TX 606 and receiver 202 act as “pass through” devices, as shownin FIG. 6, to pass these sets of adaptation parameters to transmitter204.

Referring now to FIG. 7, another network device 700 is illustrated thatincludes receiver 202 and transmitter 204 as discussed above withrespect to FIG. 2 as well as a simplex retimer 702 that are configuredto perform link-training in accordance with embodiments of the presentdisclosure. In one embodiment, receiver 202 and transmitter 204 areimplemented on chip with the hardware and software configured to performthe main functionality of network device 700 (e.g., switchingfunctionality, server functionality, etc.). In this embodiment, simplexretimer 702 is implemented on a separate chip but still within networkdevice 700. For example, simplex retimer 702 can be implemented on thesame printed circuit board as the chip that implements receiver 202 andtransmitter 204. The two chips can be coupled via copper traces on theprinted circuit board or some other type of transmission line(s) notshown in FIG. 7.

Simplex retimer 702 is configured to clean up and remove signaldegradation of a signal received over transmission line(s) 220 fromtransmitter 204 before sending the signal to the receiver of the remoteLP (not shown) over transmission line(s) 220.

As shown in FIG. 7, simplex retimer 702 specifically includes a retimerreceiver (RX) 704 and a retimer transmitter (TX) 606. Retimer RX 704 isconfigured to receive a signal from transmitter 204 carrying OSI datalink layer and higher layer data and remove, at least to some extent,signal degradation of the signal. In some implementations, retimer RX704 includes an adaptive continuous time linear equalizer and/or adecision feedback equalizer for cleaning up and removing signaldegradation of a signal received from transmitter 704 before sending thesignal to retimer TX 706 for transmission to the receiver of the remoteLP over transmission line(s) 220.

Because transmitter 204 is not in direct communication with the receiverof the remote LP as was the case in FIG. 2, retimer TX 706 can nowperform link training with the transmitter of the remote LP as describedabove with respect to FIG. 2. In particular, retimer TX 706 can includean encoder similar to encoder 214 in FIG. 2 to encode any adaptationparameters for the transmitter of the remote LP over an communicationlink formed using any of the above methods or techniques described above(e.g., stealing bits from the PCS protocol, low-speed signaling, etc.).The adaptation parameters for the receiver of the remote LP aregenerated by receiver 202 as described above with respect to FIG. 2.Transmitter 204 and retimer RX 704 can act as “pass through” devices, asshown in FIG. 7, to pass this set of adaptation parameters to retimer TX706.

Referring now to FIG. 8, another network device 800 is illustrated withreceiver 202 and transmitter 204 from FIG. 2 as well as a duplex retimer802 configured to perform link-training in accordance with embodimentsof the present disclosure. Duplex retimer 802 includes two simplexretimers 804 and 806. Simplex retimer 804 includes a retimer receiver(RX) 808 and a retimer transmitter (TX) 810. Simplex retimer 806includes a retimer RX 812 and a retimer TX 812. In one embodiment,receiver 202 and transmitter 204 are implemented on chip with thehardware and software configured to perform the main functionality ofnetwork device 800 (e.g., switching functionality, server functionality,etc.). In this embodiment, duplex retimer 802 is implemented on aseparate chip but still within network device 800. For example, duplexretimer 802 can be implemented on the same printed circuit board as thechip that implements receiver 202 and transmitter 204. The two chips canbe coupled via copper traces on the printed circuit board or some othertype of transmission line(s) not shown in FIG. 8.

In one embodiment, receiver 202 and transmitter 204 can perform linktraining with duplex retimer 802 as described above with respect to FIG.2. More specifically, in such an embodiment, duplex retimer 802 can beconsidered the remote LP of receiver 202 and transmitter 204 asdescribed above with respect to FIG. 2. Receiver 202 and transmitter 204can perform link training with duplex retimer 802 by transmitting andreceiving link training data over a link training communication channelco-exists with data traffic corresponding to the OSI data link layer andother higher OSI layers that is communicated over transmission line(s)816 and 818. The link training communication channel can be formed usingone or more of the techniques discussed above. For example, the linktraining communication channel can be formed by stealing pad bits fromthe alignment markers of the PCS protocol or using low-frequencysignaling that is positioned on “top” of the comparativelyhigher-frequency signaling used to carry the OSI data link layer andother higher OSI layers.

In one embodiment, the link training communication channel can be usedto carry link training data as described above between duplex retimer802 and receiver 202 and transmitter 204. In another embodiment, thelink training communication channel can further be used to carry linktraining data to signal proprietary modes that each of duplex retimer802 and receiver 202 and transmitter 204 support. For example,proprietary modes can include proprietary speeds for communicating theOSI data link layer and other higher OSI layers over transmissionline(s) 816 and 818, proprietary PCS protocol alignment markers forcommunicating the OSI data link layer and other higher OSI layers overtransmission line(s) 816 and 818, and proprietary forward errorcorrection schemes that can be used to encode the OSI data link layerand other higher OSI layers for transmission line(s) 816 and 818. Duplexretimer 802 and receiver 202 and transmitter 204 can subsequently agreeon a common, supported proprietary mode and configure their respectivehardware/software to operate using the proprietary mode. It should benoted that proprietary modes can similarly be communicated between otherremote LPs, such as another network device in FIG. 1, and receiver 202and transmitter 204 and used between the two devices.

The proprietary speeds can be speeds that are higher than the standardspeed in which the duplex retimer 802 and receiver 202 and transmitter204 are specified as supporting for communicating the OSI data linklayer and other higher OSI layers over transmission line(s) 816 and 818.For example, duplex retimer 802 and receiver 202 and transmitter 204 canbe specified as supporting 50 Gb/s over a single lane in accordance withan IEEE 802.3 Standard specification. The proprietary speeds can bespeeds above 50 Gb/s. The link training communication channel can beused to carry link training data that indicates the proprietary speedsthat each of duplex retimer 802 and the pair of receiver 202 andtransmitter 204 support for communicating the OSI data link layer andother higher OSI layers over transmission line(s) 816 and 818. The linktraining communication channel can further be used to carry linktraining data that indicates whether the channel over transmissionline(s) 816 and/or 818 has characteristics that can support suchproprietary speeds within some desired or required BER performancerange.

The proprietary alignment markers can include alignment markers withdifferent sizes, positioning, and content over those specified in astandard specification, such as one of the IEEE 802.3 Standardspecifications. The proprietary FEC scheme can include the use of aproprietary generator matrix for encoding blocks of data or aproprietary polynomial for encoding blocks of data.

It will be apparent to persons skilled in the relevant art(s) thatvarious elements and features of the present disclosure, as describedherein, can be implemented in hardware using analog and/or digitalcircuits, in software, through the execution of instructions by one ormore general purpose or special-purpose processors, or as a combinationof hardware and software.

The following description of a general purpose computer system isprovided for the sake of completeness. Embodiments of the presentdisclosure can be implemented in hardware, or as a combination ofsoftware and hardware. Consequently, embodiments of the disclosure maybe implemented in the environment of a computer system or otherprocessing system. An example of such a computer system 900 is shown inFIG. 9. Blocks depicted in FIGS. 2-8 may execute on one or more computersystems 900.

Computer system 900 includes one or more processors, such as processor904. Processor 904 can be a special purpose or a general purpose digitalsignal processor. Processor 904 is connected to a communicationinfrastructure 902 (for example, a bus or network). Various softwareimplementations are described in terms of this exemplary computersystem. After reading this description, it will become apparent to aperson skilled in the relevant art(s) how to implement the disclosureusing other computer systems and/or computer architectures.

Computer system 900 also includes a main memory 906, preferably randomaccess memory (RAM), and may also include a secondary memory 908.Secondary memory 908 may include, for example, a hard disk drive 910and/or a removable storage drive 912, representing a floppy disk drive,a magnetic tape drive, an optical disk drive, or the like. Removablestorage drive 912 reads from and/or writes to a removable storage unit916 in a well-known manner. Removable storage unit 916 represents afloppy disk, magnetic tape, optical disk, or the like, which is read byand written to by removable storage drive 912. As will be appreciated bypersons skilled in the relevant art(s), removable storage unit 916includes a computer usable storage medium having stored therein computersoftware and/or data.

In alternative implementations, secondary memory 908 may include othersimilar means for allowing computer programs or other instructions to beloaded into computer system 900. Such means may include, for example, aremovable storage unit 918 and an interface 914. Examples of such meansmay include a program cartridge and cartridge interface (such as thatfound in video game devices), a removable memory chip (such as an EPROM,or PROM) and associated socket, a thumb drive and USB port, and otherremovable storage units 918 and interfaces 914 which allow software anddata to be transferred from removable storage unit 918 to computersystem 900.

Computer system 900 may also include a communications interface 920.Communications interface 920 allows software and data to be transferredbetween computer system 900 and external devices. Examples ofcommunications interface 920 may include a modem, a network interface(such as an Ethernet card), a communications port, a PCMCIA slot andcard, etc. Software and data transferred via communications interface920 are in the form of signals which may be electronic, electromagnetic,optical, or other signals capable of being received by communicationsinterface 920. These signals are provided to communications interface920 via a communications path 922. Communications path 922 carriessignals and may be implemented using wire or cable, fiber optics, aphone line, a cellular phone link, an RF link and other communicationschannels.

As used herein, the terms “computer program medium” and “computerreadable medium” are used to generally refer to tangible storage mediasuch as removable storage units 916 and 918 or a hard disk installed inhard disk drive 910. These computer program products are means forproviding software to computer system 900.

Computer programs (also called computer control logic) are stored inmain memory 906 and/or secondary memory 908. Computer programs may alsobe received via communications interface 920. Such computer programs,when executed, enable the computer system 900 to implement the presentdisclosure as discussed herein. In particular, the computer programs,when executed, enable processor 904 to implement the processes of thepresent disclosure, such as any of the methods described herein.Accordingly, such computer programs represent controllers of thecomputer system 900. Where the disclosure is implemented using software,the software may be stored in a computer program product and loaded intocomputer system 900 using removable storage drive 912, interface 914, orcommunications interface 920.

In another embodiment, features of the disclosure are implementedprimarily in hardware using, for example, hardware components such asapplication-specific integrated circuits (ASICs) and gate arrays.Implementation of a hardware state machine so as to perform thefunctions described herein will also be apparent to persons skilled inthe relevant art(s).

Embodiments have been described above with the aid of functionalbuilding blocks illustrating the implementation of specified functionsand relationships thereof. The boundaries of these functional buildingblocks have been arbitrarily defined herein for the convenience of thedescription. Alternate boundaries can be defined so long as thespecified functions and relationships thereof are appropriatelyperformed.

The foregoing description of the specific embodiments will so fullyreveal the general nature of the disclosure that others can, by applyingknowledge within the skill of the art, readily modify and/or adapt forvarious applications such specific embodiments, without undueexperimentation, without departing from the general concept of thepresent disclosure. Therefore, such adaptations and modifications areintended to be within the meaning and range of equivalents of thedisclosed embodiments, based on the teaching and guidance presentedherein. It is to be understood that the phraseology or terminologyherein is for the purpose of description and not of limitation, suchthat the terminology or phraseology of the present specification is tobe interpreted by the skilled artisan in light of the teachings andguidance.

What is claimed is:
 1. A network device for performingserializer-deserializer communication with a remote link partner (LP)over a transmission line, the network device comprising: a retimerreceiver comprising a decoder configured to extract link training datafrom an in-band link training communication channel in a signal receivedfrom the remote LP over the transmission line, wherein the in-band linktraining communication channel is embedded among data trafficcorresponding to an Open Systems Interconnect (OSI) data link layer andother higher OSI layers in the signal; and a transmitter comprising atransmitter analog front-end (AFE), an encoder, and an adaptationparameter receiver configured to receive, through a pass through retimertransmitter and a pass through receiver located within the networkdevice, the link training data from the retimer receiver and adjust oneor more parameters of the transmitter AFE or the encoder based on thelink training data, wherein the in-band link training communicationchannel is formed using low-frequency signaling with a frequency that islower than high-frequency signaling used to transmit the OSI data linklayer and other higher OSI layers in the signal transmitted from theremote LP, wherein the pass through retimer transmitter comprises adigital-to-analog converter (DAC) for converting the combination of thelow-frequency signaling and the high-frequency signaling from a digitaldomain to an analog domain, and wherein part of a full-scale range ofthe DAC is reserved for the low-frequency signaling.
 2. The networkdevice of claim 1, wherein the in-band link training communicationchannel is formed using overhead from a Physical Coding Sublayer (PCS)protocol that is part of the OSI networking protocol sublayer.
 3. Thenetwork device of claim 2, wherein the overhead is pad bits included inalignment markers that are inserted among encoded blocks of the OSI datalink layer and other higher OSI layers in the signal by the PCSprotocol.
 4. The network device of claim 1, wherein the decodercomprises a low-pass filter configured to filter the signal to extractthe link training data from the in-band link training communicationchannel in the signal.
 5. The network device of claim 1, wherein thedecoder comprises a low-pass filter configured to filter a baselinevoltage or mean signal level of the signal to extract the link trainingdata from the in-band link training communication channel in the signal.6. The network device of claim 1, wherein the one or more parameters ofthe transmitter AFE or the encoder comprise equalizer tap weights,precoder settings, or delay parameters to compensate for differentialskew associated with the transmission line.
 7. The network device ofclaim 1, wherein the retimer receiver includes an adaptation parametergenerator configured to monitor the quality of the data traffic andfurther adjust the one or more parameters of the transmitter AFE or theencoder.
 8. A network device for performing serializer-deserializercommunication with a remote link partner (LP) over a transmission line,the network device comprising: a receiver configured to monitor a signalreceived from the remote LP over the transmission line to determine achange to one or more parameters of the remote LP; and a retimertransmitter configured to receive, through a pass through transmitterand a pass through retimer receiver located within the network device,the change to the one or more parameters of the remote LP and transmitthe change to the one or more parameters of the remote LP over anin-band link training communication channel in a signal transmitted tothe remote LP, wherein the in-band link training communication channelis embedded among data traffic corresponding to an Open SystemsInterconnect (OSI) data link layer and other higher OSI layers in thesignal transmitted to the remote LP, wherein the in-band link trainingcommunication channel is formed using low-frequency signaling with afrequency that is lower than high-frequency signaling used to transmitthe OSI data link layer and other higher OSI layers in the signaltransmitted to the remote LP, wherein the retimer transmitter comprisesa digital-to-analog converter (DAC) for converting the combination ofthe low-frequency signaling and the high-frequency signaling from adigital domain to an analog domain, and wherein part of a full-scalerange of the DAC is reserved for the low-frequency signaling.
 9. Thenetwork device of claim 8, wherein the in-band link trainingcommunication channel is formed using overhead from a Physical CodingSublayer (PCS) protocol that is part of the OSI networking protocolsublayer.
 10. The network device of claim 9, wherein the overhead is padbits included in alignment markers that are inserted among encodedblocks of the OSI data link layer and other higher OSI layers in thesignal transmitted to the remote LP by the PCS protocol.
 11. The networkdevice of claim 8, wherein the one or more parameters of the remote LPcomprise equalizer tap weights, precoder settings, or delay parametersto compensate for differential skew associated with the transmissionline.
 12. A network device for performing serializer-deserializercommunication with a remote link partner (LP) over a transmission line,the network device comprising: a retimer receiver configured to extractlink training data from an in-band link training communication channelin a signal received from the remote link LP over the transmission line;and a transmitter configured to receive, through a pass through retimertransmitter and a pass through receiver located within the networkdevice, the link training data from the retimer receiver and adjust oneor more parameters of the transmitter based on the link training data,wherein the in-band link training communication channel is embeddedamong data traffic corresponding to an Open Systems Interconnect (OSI)data link layer and other higher OSI layers in the signal and is formedusing one of: overhead from a Physical Coding Sublayer (PCS) protocolthat is part of the OSI networking protocol sublayer, or low-frequencysignaling with a frequency that is lower than high-frequency signalingused to transmit the OSI data link layer and other higher OSI layers inthe signal, wherein the retimer receiver includes an adaptationparameter generator configured to monitor the quality of the datatraffic and adjust the one or more parameters of an analog front-end(AFE) of the transmitter or an encoder of the transmitter, wherein thein-band link training communication channel is formed usinglow-frequency signaling with a frequency that is lower thanhigh-frequency signaling used to transmit the OSI data link layer andother higher OSI layers in the signal transmitted from the remote LP,wherein the retimer transmitter comprises a digital-to-analog converter(DAC) for converting the combination of the low-frequency signaling andthe high-frequency signaling from a digital domain to an analog domain,and wherein part of a full-scale range of the DAC is reserved for thelow-frequency signaling.
 13. The network device of claim 12, wherein theoverhead is pad bits included in alignment markers that are insertedamong encoded blocks of the OSI data link layer and other higher OSIlayers in the signal by the PCS protocol.
 14. The network device ofclaim 12, wherein the retimer receiver comprises a low-pass filterconfigured to filter the signal to extract the link training data fromthe in-band link training communication channel in the signal.
 15. Thenetwork device of claim 12, wherein the retimer receiver comprises alow-pass filter configured to filter a baseline voltage or mean signallevel of the signal to extract the link training data from the in-bandlink training communication channel in the signal.
 16. The networkdevice of claim 12, wherein the one or more parameters of thetransmitter comprise equalizer tap weights, precoder settings, or delayparameters to compensate for differential skew associated with thetransmission line.
 17. The network device of claim 12, wherein thenetwork device is a switch.